package com.gun.staticproxyinter;

/**
 * @Description 1、代理类与目标类都要实现 同一个接口。、
 * ProxyClass 被实例化是一个代理对象
 * @Author wutunan
 * @Date 2024/5/5
 */
public class ProxyClass implements Person {
    // 2、代理对象当中必须 包含 目标对象
    // 目标对象 TargetObject
    // 抽象
    Person bob;
    public ProxyClass(Person bob){
        this.bob = bob;
    }

    /**
     * 代理的逻辑，是我写的。
     */
    @Override
    public void doSomething() {
        // TODO 代理逻辑
        System.out.println("代理逻辑.。。。。");
        // 执行目标对象的业务逻辑
        bob.doSomething();
        // TODO 代理逻辑
        System.out.println("代理逻辑.。。。。");
    }
}
